#ifndef GDN_RECTANGLE_H
#define GDN_RECTANGLE_H

#include "gdn/Vector2.h"

namespace gdn
{
	template < typename T >
	class Rectangle
	{
		public:
			Rectangle()
			   : x(),
			     y(),
			     width(),
			     height()
			{
			}

			Rectangle( T theX, T theY, T theWidth, T theHeight )
			   : x( theX ),
			     y( theY ),
			     width( theWidth ),
			     height( theHeight )
			{
			}

			Rectangle( Vector2< T > thePos, Vector2< T > theSize )
			   : x( thePos.x ),
			     y( thePos.y ),
			     width( theSize.x ),
			     height( theSize.y )
			{
			}

			T x;
			T y;
			T width;
			T height;
	};

	typedef Rectangle< float > Rectanglef;
	typedef Rectangle< int > Rectanglei;
}

#endif // GDN_RECTANGLE_H
